package com.wwu.common.redis;

/**
 *  Redis缓存key常量
 * @author 一蓑烟雨
 * @date 2021-11-15 20:49
 * @version 1.0.0
 **/
public final class RedisConst {
    /** 项目信息 */
    public static final String SYSTEM_ITEM_NAME = "yuchen";

    /**
     * Redis缓存相关键
     * @author 一蓑烟雨
     * @date 2023/6/16 10:09
     */
    public static final class Key {
        /** 系统信息缓存 */
        public static final String SYS_CONFIG = SYSTEM_ITEM_NAME + ":sys:config";

        /** 系统参数配置 */
        public static final String SYS_PARAM = SYSTEM_ITEM_NAME + ":sys:param";

        /** 字典信息缓存 */
        public static final String SYS_DICT = SYSTEM_ITEM_NAME + ":sys:dict";

        /** jwt */
        public static final String API_TOKEN = SYSTEM_ITEM_NAME + ":api_token";
    }

    /**
     *  Redis缓存过期时间
     * @author 一蓑烟雨
     * @date 2023/6/16 10:09
     */
    public static final class Expire {
        /** 永不过期 */
        public static final Long CACHE_FOREVER =  0L;

        /** 有效期5分钟 */
        public static final Long CACHE_MINUTES_5 = 60L * 5;

        /** 有效期10分钟 */
        public static final Long CACHE_MINUTES_10 = 60L * 10;

        /** 有效期30分钟 */
        public static final Long CACHE_MINUTES_30 = 60L * 30;

        /** 有效期1小时 */
        public static final Long CACHE_HOURS_1 = 60L * 60;

        /** 有效期4小时 */
        public static final Long CACHE_HOURS_4 = 60L * 60 * 4;

        /** 有效期8小时 */
        public static final Long CACHE_HOURS_8 = 60L * 60 * 8;

        /** 有效期12小时 */
        public static final Long CACHE_HOURS_12 = 60L * 60 * 12;

        /** 有效期24小时 */
        public static final Long CACHE_HOURS_24 = 60L * 60 * 24;

        /** 有效期7天 */
        public static final Long CACHE_DAYS_7 = 60L * 60 * 24 * 7;

        /** 有效期30天 */
        public static final Long CACHE_DAYS_30 = 60L * 60 * 24 * 30;
    }
}
